<<X`

p1.p1=(M^2);
p2.p2=(M^2);
p3.p3=(M^2);
p4.p4=(M^2);
onshell=Solve[{s== (p1+p2).(p1+p2), s==(p3+p4).(p3+p4), t== (p1-p3).(p1-p3), t==(p4-p2).(p4-p2),u== (p1-p4).(p1-p4), u==(p3-p2).(p3-p2) }, {p1.p2, p3.p4, p1.p3, p2.p4, p1.p4, p2.p3}][[1]]/.u-> 4 (M^2)-s-t

prop[p_, m_, n_]:= (1/(p.p))((Subscript[𝕘, m,n])-(1-ξ) (((Subscript[p, m])(Subscript[p, n]))/(p.p)))
ferm[p_, m_]:= γ.p+m 𝟙

|A1|^2

A1sq=((g^2)/4)*LoopRefine[Contract[Spur[ferm[p1,M], (Subscript[γ, a]),ferm[p3,M], (Subscript[γ, m])]*Spur[ferm[p2,M], (Subscript[γ, b]),ferm[p4,M], (Subscript[γ, n])]*prop[p1-p3, m,n]* prop[p1-p3,a,b]]]/.onshell//Simplify

A1sq/.M->0

|A2|^2

A2sq=((g^2)/4)*LoopRefine[Contract[Spur[ferm[p1,M], (Subscript[γ, a]),ferm[p4,M], (Subscript[γ, m])]*Spur[ferm[p2,M], (Subscript[γ, b]),ferm[p3,M], (Subscript[γ, n])]*prop[p1-p4, m,n]* prop[p1-p4,a,b]]]/.onshell//Simplify

A2sq/.M->0

A1 A2*

A1A2c=((g^2)/4)LoopRefine[Contract[Spur[ferm[p3,M], (Subscript[γ, m]), ferm[p1,M], (Subscript[γ, a]),ferm[p4,M], (Subscript[γ, n]),ferm[p2,M] , (Subscript[γ, b])]*prop[p1-p3, m,n]*prop[p1-p4, a,b]]]/.onshell//Simplify

A1A2c/.M->0

A1* A2

A1cA2=((g^2)/4)*LoopRefine[Contract[Spur[ferm[p4, M], (Subscript[γ, m]), ferm[p1,M], (Subscript[γ, a]), ferm[p3,M], (Subscript[γ, n]), ferm[p2, M], (Subscript[γ, b])]*prop[p1-p3, a,b]*prop[p1-p4, m,n]]]/.onshell//Simplify

A1cA2/.M->0

AtotSQ=A1sq+A2sq-A1cA2-A1A2c(*/.t-> - 2 ((s/4)-(M^2))(1-Cos[t])*)

AtotSQ/.M->0//Simplify

AtotSQ2=AtotSQ/.t-> - 2 ((s/4)-(M^2))(1-Cos[θ])

AtotSQ/.M->0/.t-> -2 (s/4)(1-Cos[θ])//Simplify

dσ=Simplify[(1/(4Sqrt[(((p1.p2))^2)-(M^4)] ))(1/(2!))AtotSQ2 Sqrt[1-((4 (M^2))/s)] ((2π dcos)/(32(π^2)))/.onshell(*/.t-> -2 (s/4)(1-Cos[θ])*), Assumptions->{s>0}]

Normal[Series[((dσ)/dcos), {θ,0,1}]]